Systems for handling numerous document and data formats are moving towards becoming integrated computerized systems where different devices are tied to one another to provide solutions to customers' needs. A key factor in such integrated systems is enabling an original document, chart, or image to be scanned, and then presented so that a person viewing the scanned item does not perceive any difference in quality relative to the original. Unfortunately, the scanning process can introduce noise and errors into the data representing the scanned image, resulting in a perceptible diminution in the output. Technology is needed for enhancing image data having scanning introduced noise and errors without requiring significant, additional components be added to the system.
Many computerized systems already include some resolution-enhancement technology for improving the quality of scanned and printed documents. Existing resolution-enhancement technologies employ resolution enhancement in the form of templates implemented in logic operations or look-up tables. The references cited below describe various methods, devices, and systems of image or resolution enhancement to enhance printed images and displays using components already incorporated into present integrated computer systems. Image enhancement presently may be used for resolution enhancement, appearance tuning, appearance matching, conversion to gray-scale (e.g., halftone de-screening), image restoration, pattern detection and segmentation.
Existing image resolution-enhancement techniques perform a wide variety of digital document processing tasks using template-based image enhancement devices. Enhancement is commonly performed on monochrome and color images, as well as binary and continuous tone images. A typical image enhancement device includes template operators to enhance the images, which may be characterized as an operator or device that transforms one image into another image. The image enhancement device is formed of a number of imaging template operators, often referred to as templates. The templates typically comprise a mask, a pattern, and an enhancement pixel. The number of templates in an image enhancement device may vary between a small number of templates to thousands of templates. These templates may be, for example, stored in a look-up table and implemented using a look-up table formalism. Other equivalent formalisms, such as Boolean logic may be employed.
A raster is a one-dimensional array of image data, reflecting a single line of data across a single dimension, i.e., the length or the width, of the image. Further, each location, or “picture element,” in an image may be called a “pixel.” In an array defining an image in which each item of data has a value, each value indicating the properties of a location may be called a pixel value. Each pixel value is a bit in a binary form of an image, a gray-scale value in a gray-scale form of an image, or a set of color-spaced coordinates in a color-coordinate form of an image. The binary form, gray-scale form, and color-coordinate form are each arranged typically in a two-dimensional array of lines and columns, which defines the image.
Tung, C., “Piece-Wise Print Image Enhancement for Dot Matrix Printers,” U.S. Pat. No. 4,847,641, Jul. 11, 1989; and U.S. Pat. No. 5,005,139, Apr. 2, 1991, describe resolution-enhancement methods and devices. Tung describes several types of printing errors that occur in printing characters and graphs using pixels, such as stepped edges instead of smooth edges, and omitted detail in sharp tips and circles (Cols. 7 and 8 of '641). Tung describes resolution-enhancement methods and devices in the prior art operable to smooth printed lines and curves, and fill in display errors by enhancing the resolution of pixels. In the prior art, an image-resolution-enhancement device uses templates to transform certain pixel patterns in a binary image into a corresponding enhanced pixel patterns by matching a template to the pixel patterns. Template matching is a binary-matching process whereby a binary template is applied to a binary image. An image consisting of lines in a binary form is sent to a data-buffering module. A binary-pattern-matching operation is performed using binary templates that are typically defined as possessing ones and zeros. After combining the buffered image data and the templates in the binary-pattern-matching operation, an output step substitutes an enhancement pixel for the target pixel when a 100-percent match is found to create the enhanced image. The image-resolution-enhancement process may be implemented in various ways, such as a Boolean logic module or a look-up table. In the Boolean logic representation, pixel values are used as variables in the logic architecture, such as a logical sum of products.
Specifically, referring to FIGS. 1 and 2, the image-enhancement device observes a pattern of pixels in a window defined by a selected template. FIGS. 1 and 2 illustrate certain aspects of the prior art for resolution-enhancement technology. FIG. 1 illustrates a 5×5 window comprising a plurality of bits representing pixels located about a target pixel, including pixels from the same line as the target pixel as well as pixels from at least one line above and at least one line below the target pixel (if available). A wide variety of types and sizes of windows are known. The window used in a particular application depends on the image to be analyzed and the particular process to be performed on the image. The 5×5 window illustrated in FIG. 1 includes five lines (1–5), and five columns (A–E), representing a 25-pixel block of binary-valued pixels of an image. One pixel in the window is the target pixel, which is typically the center pixel 3C, while the other pixels in the window are the neighboring pixels. The target pixel and the neighboring pixels form a neighborhood. The window is typically moved across the data representing an image, advancing from target pixel to target pixel.
FIGS. 2A–D illustrate conventional resolution-enhancement technology being applied to the target pixel 3C in a 5×5 window. FIG. 2A illustrates an example of the values and positions of pixels of a one-bit-per-pixel binary image in the 5×5 window. The “1”s represent pixels to be turned-on or displayed, and the “0”s represent pixels that are not to be turned-on. The image portion in the window of FIG. 2A could represent a two-pixel-wide line rising from left to right, such as a forward slash. The pixels in the window of FIG. 2A are inputted into a template-matching operation as discussed below.
FIG. 2B illustrates a mask portion of a template that establishes whether a particular pixel in a window is a pixel of interest. The mask illustrated in FIG. 2B may not include all the pixels in the window as pixels of interest. Rather the mask defines a pixel-bit subset of the window that may, but typically does not, include all the pixel bits in the window. FIG. 2C illustrates a pattern portion of a template that defines a “prediction-bit subset” that establishes the value each particular pixel of interest must have to be considered a match. That is, for a match to be found, all the pixels of FIG. 2A that are in the “1” positions of FIG. 2B must equal the respective pixels in FIG. 2C. FIG. 2D illustrates a match being found in the prior art when 100 percent of the pixels of interest (the pixel-bit subset of the window as defined by the mask of FIG. 2B) in FIG. 2A each have the required value as defined by the pattern (the prediction-bit subset) of FIG. 2C.
An image-enhancement device attempts to match the pixels of the window with one or more of templates. The template or another portion of the image-enhancement device includes an enhancement pixel to be substituted for the target pixel 3C when an exact match is found. If an exact match is found by comparing a pixel subset of the window with a prediction-bit subset, the image-enhancement device generates an appropriate output. The output may be an enhanced-pixel pattern for the target pixel that enhances the image. The image-enhancement device typically continues until all the templates have been applied to each target pixel, and all the target pixels have been enhanced (provided template matches have been found). In the example represented by FIGS. 2A–D, a match is found, and an enhancement pixel is substituted for the target pixel 3C to make the line look less jagged. Such an enhancement pixel may include a bit of toner added to target pixel 3C, or darkening only the upper left quadrant of target pixel 3C to smoothen the two-pixel wide line in the window of FIG. 2A. When a 100-percent match is not found, the conventional resolution-enhancement technology does not generate an enhancement and the value of the target pixel is not changed or enhanced.
The above described resolution-enhancement technology may not accurately provide resolution enhancement for scanned images because noise and errors in the scanned data often make the required 100-percent match unlikely. There is need for a method and apparatus using existing image-resolution-enhancement technologies to efficiently enhance digital-image data that may contain noise and errors, such as might be created in scanning a document. In view of the foregoing, there is a need in the art for a new and improved apparatus and method for resolution enhancement of images having noise and errors in their data.